import org.junit.Test;

import java.util.*;


public class Solution1 {
    /**
     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
     *
     * 计算n个月后老虎的数量
     * @param month int整型 月数
     * @return int整型
     */
    int sum=2;

    @Test
    public void test(){
        System.out.println(countTiger(4));
    }

    public int countTiger (int month) {
        // write code here
      add(month,1);

        return sum;
    }

    public void add(int n,int n1)           //n代表总月数，n1代表当前月数，add表示n1这个月出生的老虎的成长轨迹
    {
        for(int i=n1,j=1;i<=n;i++,j++)     //j用来存储老虎的岁数，大于2个月开始add生老虎
            if(j>=3) {sum+=2;add(n,i);}
    }
}



















//public class Solution {
//    /**
//     * 代码中的类名、方法名、参数名已经指定，请勿修改，直接返回方法规定的值即可
//     *
//     *
//     * @param s string字符串 输入的字符串
//     * @return bool布尔型
//     */
//
//    @Test
//    public void test(){
//
//        System.out.println(validPalindrome("ccdcb"));
//    }
//
//    public boolean huiwen(StringBuffer s){
//        int i=0,j=0,len=s.length();
//        if(len==1) return true;
//        for(i=0,j=len-1;i<j;i++,j--)
//            if(s.charAt(i)!=s.charAt(j)) return false;
//        return true;
//    }
//
//    public StringBuffer delete1(StringBuffer s,int num){
//        int i,len=s.length();
//        StringBuffer ss=new StringBuffer("");
//        for(i=0;i<len;i++)
//            if(i!=num) ss.append(s.charAt(i));
//        //System.out.println(ss);
//        return ss;
//    }
//
//    public boolean validPalindrome (String s) {
//        // write code here
//        StringBuffer sss=new StringBuffer(s);
//        int i=0,j=0,len=s.length();
//        if(len<3) return true;
//        if(huiwen(sss)==true) return true;
//        for(i=0;i<len;i++)
//            if(huiwen(delete1(sss,i))==true) return true;
//
//        return false;
//    }
//}